#include <bits/stdc++.h>

using namespace std;

const int N = 1e4+10;

int n;
int a[N],b[N];

int check1()
{
	a[1] = 0;
	for(int i = 2;i<=n+1;i++)
	{
		a[i] = b[i-1]-a[i-1]-a[i-2];
		if(a[i] <0||a[i]>1) return 0;
	}
	if(a[n+1] == 0) return 1;
	else return 0;
}
int check2()
{
	a[1] = 1;
	for(int i = 2;i<=n+1;i++)
	{
		a[i] = b[i-1]-a[i-1]-a[i-2];
		if(a[i] <0||a[i]>1) return 0;
	}
	if(a[n+1] == 0) return 1;
	else return 0;
}

int main()
{
	cin>>n;
	for(int i = 1;i<=n;i++) cin>>b[i];
	int ret = 0;

	ret += check1();
	ret += check2();
		
	cout<<ret<<endl;	
	return 0;
}
//int x,y;
//int day[] = {0,31,29,31,30,31,30,31,31,30,31,30,31};
//int counts;
//int main()
//{
//	cin>>x>>y;
//	for(int i = 1;i<13;i++)
//	{
//		for(int j = 1;j<=day[i];j++)
//		{
//			int k = j%10*1000+j/10*100+i%10*10+i/10;
//			int num = k*10000+i*100+j;
//			if(num<=y&&num>=x) counts++;
//		}
//	}
//	cout<<counts<<endl;
//	return 0;
//}

//int day[] = {0,31,29,31,30,31,30,31,31,30,31,30,31};
//
//int x,y;
//int counts;
//
//bool hui(int num)
//{
//	string s = to_string(num);
//	int n = s.size();
//	for(int i = 0;i<n;i++)
//	{
//		if(s[i] != s[n-i-1]) return false;
//	}
//	return true;
//}
//
//bool run(int year)
//{
//	if((year/4 == 0 && year/100 != 0) || year/400 ==0) return true;
//	return false;
//}
//
//bool nian(int num)
//{
//	int month = num / 100;
//	month %= 100;
//	int day = num % 100;
//	int year = num / 1000;
//	if(month > 13 || month == 0) return false;
//	if(month == 2)
//	{
//		if(run(year) && day > 0 && day <30) return true;
//		else if(day > 0 && day <29)
//		{
//			return true;
//		}
//	}
//	else if(month == 1|| month == 3||month == 5||month == 7||
//	month == 8|| month == 10 || month == 12)
//	{
//		if(day > 0 && day <32) return true;
//	}
//	else
//	{
//		if(day > 0 && day <31) return true;
//	}
//	return false;
//}
//
//int main()
//{
//	cin>>x>>y;
//	for(int i = x;i<=y;i++)
//	{
//		if(hui(i) && nian(i)) 
//		{
//			counts++;	
//		}
//	}
//	cout<<counts<<endl;
//	return 0;
//}
//
//const int N = 1e4+10;
//
//int n;
//int a[N],b[N],g[N],k[N];
//int x,y;
//
//int main()
//{
//	cin>>n;
//	for(int i = 1;i<=n;i++) cin>>a[i]>>b[i]>>g[i]>>k[i];
//	cin>>x>>y;
//	int i = n;
//	for(;i>=1;i--)
//	{
//		if(a[i]<=x&&b[i]<=y&&(a[i]+g[i])>=x&&(b[i]+k[i])>=y)
//		{
//			cout <<i<<endl;
//			break;
//		}
//	}
//	if(i<1)
//	cout<<"-1"<<endl;
//	return 0;
//} 
